home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-13 / amac44b.zip / MSG004.QM < prev    next >
Text File  |  1992-04-26  |  5KB  |  102 lines

  1. *                               msg004.qm
  2. *                      Miscellaneous Message Macros
  3. *                        Written By Tom Hogshead
  4. *                        [ See MSGxx.QM For Use ]
  5. *                                4/26/92
  6. *  Key      Subfile            Description
  7. * =====  ============   =================================================
  8. * @(f8)                 Format Message (For v2.10)                        |new
  9. *
  10. *        {e:\up\MSG??}  Return To MSGxx.QM
  11. *
  12. *-- eoi
  13.  
  14. *                            M A C R O S
  15. * ------------------------------------------------------------------------
  16. * @(f8) Quote and Format Messages Retaining Sender Initials, For v2.10,
  17. *      (Use @8 In msg002.qm For QEdit v2.15)
  18. * ------------------------------------------------------------------------
  19. * This macro reformats any portion of an offline message reader
  20. * messages.  Sender initials "xx>" and quote character ">" are left in
  21. * place if they exist on the first line of the marked message.  Quote
  22. * character must be ">".  If quoting character is not '>', change to
  23. * your quoting character.  Character '>' can only exist in columns 1-16
  24. * in block as quote character.  The macro operates irrespective of all
  25. * toggles and also replaces "period space" with "period two spaces".
  26.  
  27. * If a block is marked before invoking this macro, either open or
  28. * closed, it will be reformatted without pause.  If no block is marked,
  29. * the macro pauses for the user to select the block end by cursoring
  30. * down and pressing <enter>.  Marked message is reformatted to a right
  31. * margin of 60, exclusive of sender initials and quote character.  One
  32. * extra space may be added after the ">" by uncommenting the
  33. * "shiftright" line.  If the message to be quoted does not contain
  34. * sender initials and quote character, it is formatted like wrappara.
  35.  
  36. * This macro is a modification of a macro written by Tim Farley.
  37.  
  38. *    ┌───┬─ #255 (may also be space or first letter of message text)
  39. *       
  40. * TH> RW> Uuuuuuuuuu uuuuuuuuuu uuuuuuuuuu uuuuuuuuuu uuuuu uuuuu uuuuu uuuuu.
  41. * TH> RW> Vvvvvvvvvv vvvvvvvvvv vvvvvvvvvv vvvvv vvvv vvvvv vvvvv vvvvv vvvvv
  42. * TH> RW> vvvvvvvvvv vvvvvvvvvv. Wwwwwwwww wwwwwwwwww wwwww wwwww. Xxxx xxxxx
  43. * TH> RW> xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxx. Yyyy yyyyy yyyyy
  44. * TH> RW> yyyyyyyyyy yyyyy.
  45. *       
  46.  
  47. * This message BECOMES this:
  48.  
  49. * TH> RW> Uuuuuuuuuu uuuuuuuuuu uuuuuuuuuu uuuuuuuuuu uuuuu uuuuu
  50. * TH> RW> uuuuu uuuuu.  Vvvvvvvvvv vvvvvvvvvv vvvvvvvvvv vvvvv vvvv
  51. * TH> RW> vvvvv vvvvv vvvvv vvvvv vvvvvvvvvv vvvvvvvvvv.  Wwwwwwwww
  52. * TH> RW> wwwwwwwwww wwwww wwwww.  Xxxx xxxxx xxxxxxxxxx xxxxxxxxxx
  53. * TH> RW> xxxxxxxxxx xxxxxxxxxx xxxxx.  Yyyy yyyyy yyyyy yyyyyyyyyy
  54. * TH> RW> yyyyy.
  55.  
  56. @f8     macrobegin onewindow setrmargin "60" return togglewordwrap
  57.         cursorright gotoblockbeg jtrue A  markline
  58.         gotoblockbeg jtrue OK  makectrofscreen Pause jump B
  59.      A: gotoblockend unmarkblock markline prevposition B: markline
  60.     OK: gotoblockend endline #173
  61. * --------------------- Replace #255 with space ---------------------*
  62.         FindReplace #255 return " " return "GLN" return
  63. * ----------------- Mark/cut block with no initials -----------------*
  64.         gotoblockbeg gotocolumn "16" return
  65.         Find ">" return "BL" return
  66.         jtrue F begline jump C
  67.      F: cursorright
  68.      C: unmarkblock markcolumn
  69.         Find #173 return delline return delch   * Delete end block marker
  70.         gotocolumn "512" return markcolumn      * Make msg wide column blk
  71.         addline repeatcmd "4" return
  72.         begline #173                            * Make space with marker
  73.         gotoblockbeg cut cursorleft dropanchor
  74.         begline storescrbuff "9" return         * Save initials to buff 9
  75. * ---------- Paste block to Nul file, format all paragraphs ----------*
  76.         editfile "NUL" return quit gotoblockbeg horizontalwindow
  77.         editfile return paste
  78.   MORE: wrappara nextpara jtrue MORE
  79. * ----------- Insert initials in front of formatted block -----------*
  80.         dropanchor getscrbuff "9" return cut
  81.         markline begfile shiftright
  82. *       shiftright                      * For one extra space after ">"
  83.         markcolumn endfile begline markcolumn
  84.         FindReplace " " return delline paste return "LNG" return
  85. * ---------------------- Make 512 column block -----------------------*
  86.         gotocolumn "512" return markcolumn cut quit
  87. * ------------------ Paste block back where it was ------------------*
  88.         prevwindow onewindow pasteover
  89. * --------- Replace 'period space' with 'period two spaces' ---------*
  90.         findreplace "." " "   return "." "  " return "LN" return
  91.         findreplace "." "   " return "." "  " return "LN" return
  92. * ------------ Remove blank lines and any extra initials ------------*
  93.         gotoblockend unmarkblock cursordown markline
  94.         Find #173 return delline return deleteblock
  95.    INS: insertline
  96.    END: unmarkblock makectrofscreen setrmargin "80" return
  97. *
  98. * 132 bytes Tue  10-02-1990  16:51:06 (TF^F7, Tim's original macro)
  99. * 229 bytes Tue  04-21-1992  15:32:54 (TH @6, mod for v2.10)
  100. * 229 bytes Tue  04-21-1992  15:32:54 (TH @6, to RO #23/1447, 56 col width)
  101. * 229 bytes Wed  04-22-1992  09:38:23 (TH @f8, changed key, 60 col width)
  102.